import axios from 'axios'
import { MessageBox } from 'element-ui';

// 配置axios 实例
const instance = axios.create({
    // baseURL: 'http://wish.byesame.com', //默认请求地址
    // baseURL: '/api', //默认请求地址
    baseURL: process.env.VUE_APP_API_BASE_URL, //默认请求地址
    timeout: 8000, //请求超时时间
    // headers: {'token': localStorage.getItem("token")}
});


// 无痕刷新token 去了解  掘金

// 请求拦截器 发起请求 会先经过请求拦截器 然后再发送出去 所有请求之前需要 做的事情可以在这里处理
instance.interceptors.request.use((config) => {
    // 所有请求发送之前 在 请求头上挂载token
    config.headers.token = localStorage.getItem("token")
    // config 请求生成出 的 实例对象
    return config
})

// 响应拦截器
instance.interceptors.response.use((response) => {

    if (response.data.code == 401) {
        MessageBox.alert("登陆已过期，请重新登陆", "错误", {
            type: 'error',
            confirmButtonText: '去登陆'
        }).then(() => {
            localStorage.removeItem("token");
            window.location.reload();
        })
    }

    return response
})


export default instance